手把手教你移植蜂鸟E203 hbridv2【集创芯来RISC

您所在的位置:网站首页 达芬奇fpga sd卡 手把手教你移植蜂鸟E203 hbridv2【集创芯来RISC

手把手教你移植蜂鸟E203 hbridv2【集创芯来RISC

2024-07-05 15:28| 来源: 网络整理| 查看: 265

文章目录 一、管脚分析1.1 时钟管脚1.2 复位管脚1.3 QSPI接口1.4 PMU管脚1.5 其他管脚1.6 ip_reset_sys的处理1.7 上电流程控制配置1.8 管脚约束编写1.9 综合实现和生成比特流文件 二、管脚约束概览三、DaVinci约束文件代码

我是 雪天鱼,一名FPGA爱好者,研究方向是FPGA架构探索和数字IC设计。 CSDN个人博客链接:https://blog.csdn.net/qq_44447544?spm=1000.2115.3001.5343

关注公众号【集成电路设计教程】,获取更多学习资料,并拉你进“IC设计交流群”。 QQIC设计交流群 群号:866169462。

所用开发板:正点原子达芬奇FPGA开发板 芯片型号:Xilinx Artix-7 35T

应群友之邀,分享下集创芯来RISC-V杯赛 所用的软核 蜂鸟E203 hbirdv2移植教程。

思路: 参考Nulei开发板的顶层代码(e200_opensource-master/fpga/nucleikit/src/system.v(后缀不是.v可以自己改下然后打开))和约束文件(e200_opensource-master/fpga/nucleikit/constrs),写达芬奇开发板的顶层代码和约束文件,具体步骤如下所示。

如果觉得步骤有点多,那也可以直接用我搭建好的 Vivado( 2018.3 版本) 工程。资源链接:https://download.csdn.net/download/qq_44447544/83354895

一、管脚分析

enter description here

1.1 时钟管脚

首先看时钟管脚的绑定,MCU SoC 的两个输入时钟输入在 nuclei-kit 上分别按照如下方式产生:

低速的实时时钟直接由 FPGA 开发板上的 32.768KHz 时钟源输入。高速时钟由 FPGA 开发板上的 100MHz 时钟经过 FPGA 内部 PLL 降频而得(16MHz)

(1)16M时钟生成

而现在达芬奇开发板上只有一个50MHz时钟源,所以我先用MMCM将50MHz时钟源降频为 16MHz ( 32.768KHz由于频率过低无法通过此IP实现,需要自己写分频器),使用的是此 IP,具体用法可参考 正点原子达芬奇之FPGA开发指南1.1 第十五章 IP核之MMCM/PLL实验 ,这里不过多讲解。

enter description here

例化使用如下图所示,然后可以把原顶层的那个MMCM IP核例化给删了

enter description here

(2)32.768KHz 时钟生成

分频器代码如下:

// 50MHz --> 32768Hz 约为1526倍 50MHz/1526=32765.4 HZ,作为常开域时钟 module clk_div( input clk, input rst_n, output reg clk_div ); parameter NUM_DIV = 11'd1526; reg [10:0] cnt; always @(posedge clk or negedge rst_n) if(!rst_n) begin cnt


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3